<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Box2D: b2Contact Class Reference</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  <td id="projectlogo"><img alt="Logo" src="icon.gif"/></td>
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">Box2D
   &#160;<span id="projectnumber">2.2.1</span>
   </div>
   <div id="projectbrief">A 2D Physics Engine for Games</div>
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.5.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-types">Protected Types</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-static-methods">Static Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#pro-static-attribs">Static Protected Attributes</a> &#124;
<a href="#friends">Friends</a>  </div>
  <div class="headertitle">
<div class="title">b2Contact Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="b2Contact" -->
<p><code>#include &lt;<a class="el" href="b2_contact_8h_source.html">b2Contact.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for b2Contact:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classb2_contact.png" usemap="#b2Contact_map" alt=""/>
  <map id="b2Contact_map" name="b2Contact_map">
<area href="classb2_chain_and_circle_contact.html" alt="b2ChainAndCircleContact" shape="rect" coords="0,56,172,80"/>
<area href="classb2_chain_and_polygon_contact.html" alt="b2ChainAndPolygonContact" shape="rect" coords="182,56,354,80"/>
<area href="classb2_circle_contact.html" alt="b2CircleContact" shape="rect" coords="364,56,536,80"/>
<area href="classb2_edge_and_circle_contact.html" alt="b2EdgeAndCircleContact" shape="rect" coords="546,56,718,80"/>
<area href="classb2_edge_and_polygon_contact.html" alt="b2EdgeAndPolygonContact" shape="rect" coords="728,56,900,80"/>
<area href="classb2_polygon_and_circle_contact.html" alt="b2PolygonAndCircleContact" shape="rect" coords="910,56,1082,80"/>
<area href="classb2_polygon_contact.html" alt="b2PolygonContact" shape="rect" coords="1092,56,1264,80"/>
</map>
 </div></div>

<p><a href="classb2_contact-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structb2_manifold.html">b2Manifold</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#ab0597077b23615476327f9b32d9c4979">GetManifold</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2a1fb2fa1e0956faf61047c4aba3da5a"></a><!-- doxytag: member="b2Contact::GetManifold" ref="a2a1fb2fa1e0956faf61047c4aba3da5a" args="() const " -->
const <a class="el" href="structb2_manifold.html">b2Manifold</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>GetManifold</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6a30a44a28b44754cb61bba65cb5b728"></a><!-- doxytag: member="b2Contact::GetWorldManifold" ref="a6a30a44a28b44754cb61bba65cb5b728" args="(b2WorldManifold *worldManifold) const " -->
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#a6a30a44a28b44754cb61bba65cb5b728">GetWorldManifold</a> (<a class="el" href="structb2_world_manifold.html">b2WorldManifold</a> *worldManifold) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the world manifold. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a367dc9a563ad7db5547f4247777a33c9"></a><!-- doxytag: member="b2Contact::IsTouching" ref="a367dc9a563ad7db5547f4247777a33c9" args="() const " -->
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#a367dc9a563ad7db5547f4247777a33c9">IsTouching</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Is this contact touching? <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#a6edf582f8c161d6632854cddefe55a0c">SetEnabled</a> (bool flag)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae7bd71ee1b0bb352bec6eeaab4f91c6a"></a><!-- doxytag: member="b2Contact::IsEnabled" ref="ae7bd71ee1b0bb352bec6eeaab4f91c6a" args="() const " -->
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#ae7bd71ee1b0bb352bec6eeaab4f91c6a">IsEnabled</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Has this contact been disabled? <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aebfebb1e4b27dc0bd7aa120093e3d650"></a><!-- doxytag: member="b2Contact::GetNext" ref="aebfebb1e4b27dc0bd7aa120093e3d650" args="()" -->
<a class="el" href="classb2_contact.html">b2Contact</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#aebfebb1e4b27dc0bd7aa120093e3d650">GetNext</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the next contact in the world's contact list. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a55e20c9e32071f492952dad256552141"></a><!-- doxytag: member="b2Contact::GetNext" ref="a55e20c9e32071f492952dad256552141" args="() const " -->
const <a class="el" href="classb2_contact.html">b2Contact</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>GetNext</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a707a3a5a14c2cdd4c6eb7fc648d76037"></a><!-- doxytag: member="b2Contact::GetFixtureA" ref="a707a3a5a14c2cdd4c6eb7fc648d76037" args="()" -->
<a class="el" href="classb2_fixture.html">b2Fixture</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#a707a3a5a14c2cdd4c6eb7fc648d76037">GetFixtureA</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get fixture A in this contact. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af5820afc8ebb6d785a47a979b373b004"></a><!-- doxytag: member="b2Contact::GetFixtureA" ref="af5820afc8ebb6d785a47a979b373b004" args="() const " -->
const <a class="el" href="classb2_fixture.html">b2Fixture</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>GetFixtureA</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab0c9c059c776f315ae62abb5c978afcc"></a><!-- doxytag: member="b2Contact::GetChildIndexA" ref="ab0c9c059c776f315ae62abb5c978afcc" args="() const " -->
int32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#ab0c9c059c776f315ae62abb5c978afcc">GetChildIndexA</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the child primitive index for fixture A. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a68464fe587d7e6a1f52763e965bb7361"></a><!-- doxytag: member="b2Contact::GetFixtureB" ref="a68464fe587d7e6a1f52763e965bb7361" args="()" -->
<a class="el" href="classb2_fixture.html">b2Fixture</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#a68464fe587d7e6a1f52763e965bb7361">GetFixtureB</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get fixture B in this contact. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06db543279afbb51071bf57475bfcc1e"></a><!-- doxytag: member="b2Contact::GetFixtureB" ref="a06db543279afbb51071bf57475bfcc1e" args="() const " -->
const <a class="el" href="classb2_fixture.html">b2Fixture</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>GetFixtureB</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9edc26022c3d1a9cf1dab9d79d639b3f"></a><!-- doxytag: member="b2Contact::GetChildIndexB" ref="a9edc26022c3d1a9cf1dab9d79d639b3f" args="() const " -->
int32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#a9edc26022c3d1a9cf1dab9d79d639b3f">GetChildIndexB</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the child primitive index for fixture B. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#a5e8fbb6bb2966ac84272bb0ea9d2e4c7">SetFriction</a> (float32 friction)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0b6daf4137fd1719961f5d780b8dda15"></a><!-- doxytag: member="b2Contact::GetFriction" ref="a0b6daf4137fd1719961f5d780b8dda15" args="() const " -->
float32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#a0b6daf4137fd1719961f5d780b8dda15">GetFriction</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the friction. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad66d9290da187cef4c9f48c5766d4460"></a><!-- doxytag: member="b2Contact::ResetFriction" ref="ad66d9290da187cef4c9f48c5766d4460" args="()" -->
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#ad66d9290da187cef4c9f48c5766d4460">ResetFriction</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the friction mixture to the default value. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#a24ca342c2bb766c53ef5ad04f5268fc1">SetRestitution</a> (float32 restitution)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aed12746a2855277479802144b699326b"></a><!-- doxytag: member="b2Contact::GetRestitution" ref="aed12746a2855277479802144b699326b" args="() const " -->
float32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#aed12746a2855277479802144b699326b">GetRestitution</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the restitution. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a243501bc5c146e9eb1296162d328aef1"></a><!-- doxytag: member="b2Contact::ResetRestitution" ref="a243501bc5c146e9eb1296162d328aef1" args="()" -->
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#a243501bc5c146e9eb1296162d328aef1">ResetRestitution</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the restitution to the default value. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae3c2842e5325b2d4500f8ed1d4de2f72"></a><!-- doxytag: member="b2Contact::Evaluate" ref="ae3c2842e5325b2d4500f8ed1d4de2f72" args="(b2Manifold *manifold, const b2Transform &amp;xfA, const b2Transform &amp;xfB)=0" -->
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#ae3c2842e5325b2d4500f8ed1d4de2f72">Evaluate</a> (<a class="el" href="structb2_manifold.html">b2Manifold</a> *manifold, const <a class="el" href="structb2_transform.html">b2Transform</a> &amp;xfA, const <a class="el" href="structb2_transform.html">b2Transform</a> &amp;xfB)=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Evaluate this contact with your own manifold and transforms. <br/></td></tr>
<tr><td colspan="2"><h2><a name="pro-types"></a>
Protected Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br/>
&#160;&#160;<b>e_islandFlag</b> =  0x0001, 
<b>e_touchingFlag</b> =  0x0002, 
<b>e_enabledFlag</b> =  0x0004, 
<b>e_filterFlag</b> =  0x0008, 
<br/>
&#160;&#160;<b>e_bulletHitFlag</b> =  0x0010, 
<b>e_toiFlag</b> =  0x0020
<br/>
 }</td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a44a3d32149021269eb9dfd4015c98e0d"></a><!-- doxytag: member="b2Contact::FlagForFiltering" ref="a44a3d32149021269eb9dfd4015c98e0d" args="()" -->
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_contact.html#a44a3d32149021269eb9dfd4015c98e0d">FlagForFiltering</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag this contact for filtering. Filtering will occur the next time step. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2d1c98399cef1eb95c6ee8aad8257f60"></a><!-- doxytag: member="b2Contact::b2Contact" ref="a2d1c98399cef1eb95c6ee8aad8257f60" args="(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB)" -->
&#160;</td><td class="memItemRight" valign="bottom"><b>b2Contact</b> (<a class="el" href="classb2_fixture.html">b2Fixture</a> *fixtureA, int32 indexA, <a class="el" href="classb2_fixture.html">b2Fixture</a> *fixtureB, int32 indexB)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a218a66a6c34e3de1c428aa73a0680dfe"></a><!-- doxytag: member="b2Contact::Update" ref="a218a66a6c34e3de1c428aa73a0680dfe" args="(b2ContactListener *listener)" -->
void&#160;</td><td class="memItemRight" valign="bottom"><b>Update</b> (<a class="el" href="classb2_contact_listener.html">b2ContactListener</a> *listener)</td></tr>
<tr><td colspan="2"><h2><a name="pro-static-methods"></a>
Static Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad905650aab96ead0434c2bb449e4129c"></a><!-- doxytag: member="b2Contact::AddType" ref="ad905650aab96ead0434c2bb449e4129c" args="(b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB)" -->
static void&#160;</td><td class="memItemRight" valign="bottom"><b>AddType</b> (b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac77031d85c2e06d5cdc1f5c774f8f3fd"></a><!-- doxytag: member="b2Contact::InitializeRegisters" ref="ac77031d85c2e06d5cdc1f5c774f8f3fd" args="()" -->
static void&#160;</td><td class="memItemRight" valign="bottom"><b>InitializeRegisters</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2de75f3569a0f962cf1e6e1b6384c0a1"></a><!-- doxytag: member="b2Contact::Create" ref="a2de75f3569a0f962cf1e6e1b6384c0a1" args="(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)" -->
static <a class="el" href="classb2_contact.html">b2Contact</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>Create</b> (<a class="el" href="classb2_fixture.html">b2Fixture</a> *fixtureA, int32 indexA, <a class="el" href="classb2_fixture.html">b2Fixture</a> *fixtureB, int32 indexB, <a class="el" href="classb2_block_allocator.html">b2BlockAllocator</a> *allocator)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a36c1f6767f212f2e4ddb4c4b2c7cdb75"></a><!-- doxytag: member="b2Contact::Destroy" ref="a36c1f6767f212f2e4ddb4c4b2c7cdb75" args="(b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator)" -->
static void&#160;</td><td class="memItemRight" valign="bottom"><b>Destroy</b> (<a class="el" href="classb2_contact.html">b2Contact</a> *contact, b2Shape::Type typeA, b2Shape::Type typeB, <a class="el" href="classb2_block_allocator.html">b2BlockAllocator</a> *allocator)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab57797a25c2206edf1ad7c4dcd1cbca5"></a><!-- doxytag: member="b2Contact::Destroy" ref="ab57797a25c2206edf1ad7c4dcd1cbca5" args="(b2Contact *contact, b2BlockAllocator *allocator)" -->
static void&#160;</td><td class="memItemRight" valign="bottom"><b>Destroy</b> (<a class="el" href="classb2_contact.html">b2Contact</a> *contact, <a class="el" href="classb2_block_allocator.html">b2BlockAllocator</a> *allocator)</td></tr>
<tr><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a85d5408adcbf466bcb8f291aeb35bc3b"></a><!-- doxytag: member="b2Contact::m_flags" ref="a85d5408adcbf466bcb8f291aeb35bc3b" args="" -->
uint32&#160;</td><td class="memItemRight" valign="bottom"><b>m_flags</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adf3a3450e0fa9cf6d11ca22467c2370b"></a><!-- doxytag: member="b2Contact::m_prev" ref="adf3a3450e0fa9cf6d11ca22467c2370b" args="" -->
<a class="el" href="classb2_contact.html">b2Contact</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_prev</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a241fea000d26da8761b5520a9adcd87a"></a><!-- doxytag: member="b2Contact::m_next" ref="a241fea000d26da8761b5520a9adcd87a" args="" -->
<a class="el" href="classb2_contact.html">b2Contact</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_next</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5f5ce747bb04f48843eb07304d47faab"></a><!-- doxytag: member="b2Contact::m_nodeA" ref="a5f5ce747bb04f48843eb07304d47faab" args="" -->
<a class="el" href="structb2_contact_edge.html">b2ContactEdge</a>&#160;</td><td class="memItemRight" valign="bottom"><b>m_nodeA</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4887c3acb8cb857e2bec659027539c7a"></a><!-- doxytag: member="b2Contact::m_nodeB" ref="a4887c3acb8cb857e2bec659027539c7a" args="" -->
<a class="el" href="structb2_contact_edge.html">b2ContactEdge</a>&#160;</td><td class="memItemRight" valign="bottom"><b>m_nodeB</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aec94bbbb8862f09365a5af99650b5be4"></a><!-- doxytag: member="b2Contact::m_fixtureA" ref="aec94bbbb8862f09365a5af99650b5be4" args="" -->
<a class="el" href="classb2_fixture.html">b2Fixture</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_fixtureA</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a83b18f0da1cfeb2c9dccc6aabed881d3"></a><!-- doxytag: member="b2Contact::m_fixtureB" ref="a83b18f0da1cfeb2c9dccc6aabed881d3" args="" -->
<a class="el" href="classb2_fixture.html">b2Fixture</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_fixtureB</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac69d3c8f18ac653cbff658a718ab9067"></a><!-- doxytag: member="b2Contact::m_indexA" ref="ac69d3c8f18ac653cbff658a718ab9067" args="" -->
int32&#160;</td><td class="memItemRight" valign="bottom"><b>m_indexA</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaaae6d149986c7267f3e28f0c58da8a0"></a><!-- doxytag: member="b2Contact::m_indexB" ref="aaaae6d149986c7267f3e28f0c58da8a0" args="" -->
int32&#160;</td><td class="memItemRight" valign="bottom"><b>m_indexB</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aebdc2c073d05ac8e544a591d2043b251"></a><!-- doxytag: member="b2Contact::m_manifold" ref="aebdc2c073d05ac8e544a591d2043b251" args="" -->
<a class="el" href="structb2_manifold.html">b2Manifold</a>&#160;</td><td class="memItemRight" valign="bottom"><b>m_manifold</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afaa231f3e9a908154f9a32af456601b6"></a><!-- doxytag: member="b2Contact::m_toiCount" ref="afaa231f3e9a908154f9a32af456601b6" args="" -->
int32&#160;</td><td class="memItemRight" valign="bottom"><b>m_toiCount</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa9e75253eaac6efdb6485a8646ac553f"></a><!-- doxytag: member="b2Contact::m_toi" ref="aa9e75253eaac6efdb6485a8646ac553f" args="" -->
float32&#160;</td><td class="memItemRight" valign="bottom"><b>m_toi</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac7915ef6f92d609ee0a43d518b4f9e75"></a><!-- doxytag: member="b2Contact::m_friction" ref="ac7915ef6f92d609ee0a43d518b4f9e75" args="" -->
float32&#160;</td><td class="memItemRight" valign="bottom"><b>m_friction</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6bc56522b4c04e28bee3542a7fc2f796"></a><!-- doxytag: member="b2Contact::m_restitution" ref="a6bc56522b4c04e28bee3542a7fc2f796" args="" -->
float32&#160;</td><td class="memItemRight" valign="bottom"><b>m_restitution</b></td></tr>
<tr><td colspan="2"><h2><a name="pro-static-attribs"></a>
Static Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5e2beb4e435e1545ae043a7a2b77d1da"></a><!-- doxytag: member="b2Contact::s_registers" ref="a5e2beb4e435e1545ae043a7a2b77d1da" args="[b2Shape::e_typeCount][b2Shape::e_typeCount]" -->
static <a class="el" href="structb2_contact_register.html">b2ContactRegister</a>&#160;</td><td class="memItemRight" valign="bottom"><b>s_registers</b> [b2Shape::e_typeCount][b2Shape::e_typeCount]</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a672598c350694d7b9a89c45f8ad0dd90"></a><!-- doxytag: member="b2Contact::s_initialized" ref="a672598c350694d7b9a89c45f8ad0dd90" args="" -->
static bool&#160;</td><td class="memItemRight" valign="bottom"><b>s_initialized</b> = false</td></tr>
<tr><td colspan="2"><h2><a name="friends"></a>
Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aece264d42f69aed410f5eb3beba6ddf2"></a><!-- doxytag: member="b2Contact::b2ContactManager" ref="aece264d42f69aed410f5eb3beba6ddf2" args="" -->
class&#160;</td><td class="memItemRight" valign="bottom"><b>b2ContactManager</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4bd536c5a7c0587913765bbc2693ceea"></a><!-- doxytag: member="b2Contact::b2World" ref="a4bd536c5a7c0587913765bbc2693ceea" args="" -->
class&#160;</td><td class="memItemRight" valign="bottom"><b>b2World</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afb788a7ba90344f3ddbafff3de0465c4"></a><!-- doxytag: member="b2Contact::b2ContactSolver" ref="afb788a7ba90344f3ddbafff3de0465c4" args="" -->
class&#160;</td><td class="memItemRight" valign="bottom"><b>b2ContactSolver</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a010ab52de250e5fe30a45d642f46405b"></a><!-- doxytag: member="b2Contact::b2Body" ref="a010ab52de250e5fe30a45d642f46405b" args="" -->
class&#160;</td><td class="memItemRight" valign="bottom"><b>b2Body</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afb35b0e61f6ee3cc516c40ea251f3236"></a><!-- doxytag: member="b2Contact::b2Fixture" ref="afb35b0e61f6ee3cc516c40ea251f3236" args="" -->
class&#160;</td><td class="memItemRight" valign="bottom"><b>b2Fixture</b></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>The class manages contact between two shapes. A contact exists for each overlapping AABB in the broad-phase (except if filtered). Therefore a contact object may exist that has no contact points. </p>
</div><hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ab0597077b23615476327f9b32d9c4979"></a><!-- doxytag: member="b2Contact::GetManifold" ref="ab0597077b23615476327f9b32d9c4979" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structb2_manifold.html">b2Manifold</a> * b2Contact::GetManifold </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Get the contact manifold. Do not modify the manifold unless you understand the internals of Box2D. </p>

</div>
</div>
<a class="anchor" id="a6edf582f8c161d6632854cddefe55a0c"></a><!-- doxytag: member="b2Contact::SetEnabled" ref="a6edf582f8c161d6632854cddefe55a0c" args="(bool flag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void b2Contact::SetEnabled </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>flag</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Enable/disable this contact. This can be used inside the pre-solve contact listener. The contact is only disabled for the current time step (or sub-step in continuous collisions). </p>

</div>
</div>
<a class="anchor" id="a5e8fbb6bb2966ac84272bb0ea9d2e4c7"></a><!-- doxytag: member="b2Contact::SetFriction" ref="a5e8fbb6bb2966ac84272bb0ea9d2e4c7" args="(float32 friction)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void b2Contact::SetFriction </td>
          <td>(</td>
          <td class="paramtype">float32&#160;</td>
          <td class="paramname"><em>friction</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Override the default friction mixture. You can call this in <a class="el" href="classb2_contact_listener.html#a416f85eb45a1099053402b15a19a7de0">b2ContactListener::PreSolve</a>. This value persists until set or reset. </p>

</div>
</div>
<a class="anchor" id="a24ca342c2bb766c53ef5ad04f5268fc1"></a><!-- doxytag: member="b2Contact::SetRestitution" ref="a24ca342c2bb766c53ef5ad04f5268fc1" args="(float32 restitution)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void b2Contact::SetRestitution </td>
          <td>(</td>
          <td class="paramtype">float32&#160;</td>
          <td class="paramname"><em>restitution</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Override the default restitution mixture. You can call this in <a class="el" href="classb2_contact_listener.html#a416f85eb45a1099053402b15a19a7de0">b2ContactListener::PreSolve</a>. The value persists until you set or reset. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="b2_contact_8h_source.html">b2Contact.h</a></li>
<li>b2Contact.cpp</li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>



<hr class="footer"/><address class="footer"><small>
Generated on Sat Sep 17 2011 17:35:55 for Box2D by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.5.1
</small></address>

</body>
</html>
